Skip to content

ci(asan): build boost_sentinel so it runs (fixes linux-asan Not Run -> exit 8)#714

Merged
frstrtr merged 1 commit into
masterfrom
ci-steward/asan-boost-sentinel-target
Jul 15, 2026
Merged

ci(asan): build boost_sentinel so it runs (fixes linux-asan Not Run -> exit 8)#714
frstrtr merged 1 commit into
masterfrom
ci-steward/asan-boost-sentinel-target

Conversation

@frstrtr

@frstrtr frstrtr commented Jul 15, 2026

Copy link
Copy Markdown
Owner

Problem

Linux x86_64 (AsAN+UBSan) fails with:

The following tests FAILED:
  1913 - boost_sentinel (Not Run)
Errors while running CTest ... exit code 8

Every real test passes; only boost_sentinel shows Not Run, tripping ctest exit 8. Reported on #713 (web-only) and #706 (DASH S8).

Root cause (deterministic, not a flake)

  • Root CMake registers the test globally: add_subdirectory(ci/sentinel) under GTest_FOUND -> add_test(NAME boost_sentinel ...).
  • The linux-asan job Build c2pool + tests --target allowlist never built the boost_sentinel binary.
  • ctest --exclude-regex "LiveTest\." includes the registered test but the executable is absent -> Not Run -> exit 8.
  • Introduced by ci(boost): per-job Conan home + committed profile + Boost sentinel (root-fix, NOT a downgrade) #700 (9e4ba86), which wired the sentinel build only into the linux lane (its dedicated Boost sentinel step). The ASan lane is informational/non-gating (build.yml L169), so master stayed green while the lane was silently red on every ASan run since.

Fix

Add boost_sentinel to the linux-asan build target list so the binary exists and the sentinel runs under ASan/UBSan (bonus: sanitized coverage of the boost integrity gate). One-line diff; mirrors the linux lane intent.

Unblock path for #713 / #706

This fix lives in build.yml on master. After merge (operator push-approval), rebase #713 and #706 onto new master to pick it up; their ASan lanes then go green. I can alternatively cherry-pick this one-liner onto each branch for a faster unblock.

No self-merge.

The linux-asan job registers the boost_sentinel test (root CMake
add_subdirectory(ci/sentinel) under GTest_FOUND) but its --target
allowlist never built the boost_sentinel binary. ctest --exclude-regex
"LiveTest\." then finds the registered test, cannot find the
executable, and reports it Not Run -> ctest exit 8. Deterministic on
every ASan run since #700 added the sentinel wired only to the linux
lane; surfaced as a red on unrelated PRs (#713 web-only, #706 DASH S8).

Add boost_sentinel to the ASan build target list so the binary exists
and the sentinel actually runs under ASan/UBSan (bonus: sanitized
coverage of the boost integrity gate). Mirrors the linux lane, which
builds the target via its dedicated Boost sentinel step.
@frstrtr
frstrtr merged commit 8e5d920 into master Jul 15, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant